﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Luna.Extender;
using System.Configuration;
using System.Xml;

namespace Luna.Framework.Extender
{
	public class XmlExtensionPoint: XmlExtensionItem, IExtensionPoint
	{
		internal XmlExtensionPoint(XmlExtensionManager manager, XmlNode node): base(manager, node) {
			
		}

		#region IExtensionPoint Members

		string IExtensionPoint.Point {
			get {
				return (string)base["point"];
			}
			set {
				base["point"] = value;
			}
		}

		IExtensionItem IExtensionPoint.this[int index] {
			get { return Children[index]; }
		}

		int IExtensionPoint.Count {
			get { return Children.Count; }
		}

		IList<IExtensionItem> IExtensionPoint.Items {
			get { return Children; }
		}

		#endregion

		#region IEnumerable<IExtensionItem> Members

		IEnumerator<IExtensionItem> IEnumerable<IExtensionItem>.GetEnumerator() {
			return Children.GetEnumerator();
		}

		#endregion

		#region IEnumerable Members

		System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() {
			throw new NotImplementedException();
		}

		#endregion
	}
}
